package org.grupoavatar.guiaubicua.entities;

import java.io.Serializable;
import java.util.ArrayList;

import org.grupoavatar.guiaubicua.auxiliares.Servicio;

import com.google.gson.annotations.SerializedName;

public class POIBean implements Serializable {
	private static final long serialVersionUID = 1L;
	
	@SerializedName("id")
	private String id;
	@SerializedName("title")
	private String title;
	@SerializedName("descripcion")
	private String descripcion;
	@SerializedName("descripcionCorta")
	private String descripcionCorta;
	@SerializedName("idPadre")
	private String idPadre;
	private POIBean padre;
	@SerializedName("contacto")
	private String contacto;
	@SerializedName("ubicacion")
	private String ubicacion;
	@SerializedName("piso")
	private int piso;
	@SerializedName("pisos")
	private int pisos;
	@SerializedName("estrellas")
	private int estrellas;

	private float promedio;
	@SerializedName("icono")
	private int icono;
	@SerializedName("latitud")
	private double latitud;
	@SerializedName("longitud")
	private double longitud;
	@SerializedName("altitud")
	private double altitud;
	@SerializedName("idCateogria")
	private int idCategoria;
	
	private CategoriaBean categoria;
	@SerializedName("hijos")
	private ArrayList<POIBean> hijos;
	@SerializedName("urlImgs")
	private ArrayList<String> urlImgs;
	@SerializedName("tags")
	private ArrayList<String> tags;
	@SerializedName("redes")
	private ArrayList<String> redes;
	
	public POIBean() {
		super();
	}

	public POIBean(String id, String descripcion, String descripcionCorta,
			POIBean padre, String contacto, String ubicacion, int piso,
			int pisos, int estrellas, float promedio, int icono,
			double latitud, double longitud, double altitud, int idCategoria,
			ArrayList<POIBean> hijos, ArrayList<String> urlImgs,
			ArrayList<String> tags, ArrayList<String> redes) {
		super();
		this.id = id;
		this.descripcion = descripcion;
		this.descripcionCorta = descripcionCorta;
		this.padre = padre;
		this.contacto = contacto;
		this.ubicacion = ubicacion;
		this.piso = piso;
		this.pisos = pisos;
		this.estrellas = estrellas;
		this.promedio = promedio;
		this.icono = icono;
		this.latitud = latitud;
		this.longitud = longitud;
		this.altitud = altitud;
		this.idCategoria = idCategoria;
		this.hijos = hijos;
		this.urlImgs = urlImgs;
		this.tags = tags;
		this.redes = redes;
	}
	
	public String getId() {
		return id;
	}

	public String getTitle() {
		return title;
	}

	public String getDescripcion() {
		return descripcion;
	}

	public String getDescripcionCorta() {
		return descripcionCorta;
	}

	public POIBean getPadre() {
		return padre;
	}

	public String getContacto() {
		return contacto;
	}

	public String getUbicacion() {
		return ubicacion;
	}

	public int getPiso() {
		return piso;
	}

	public int getPisos() {
		return pisos;
	}

	public int getEstrellas() {
		return estrellas;
	}

	public float getPromedio() {
		return promedio;
	}

	public int getIcono() {
		return icono;
	}

	public double getLatitud() {
		return latitud;
	}

	public double getLongitud() {
		return longitud;
	}

	public double getAltitud() {
		return altitud;
	}

	public CategoriaBean getCategoria() {
		return categoria;
	}

	public ArrayList<POIBean> getHijos() {
		return hijos;
	}

	public ArrayList<String> getUrlImgs() {
		return urlImgs;
	}

	public ArrayList<String> getTags() {
		return tags;
	}

	public ArrayList<String> getRedes() {
		return redes;
	}
	
	public boolean tieneValoracion() {
		boolean flag = false;
		if (estrellas==1) flag= true;
		return flag;
	}
	
	public boolean tieneIcono() {
		if (icono >0) {
			return true;
		}
		return false;
	}

	public ArrayList<Servicio> getServicios() {
		// TODO Auto-generated method stub
		return null;
	}
}